Skip to content

Comments

docs: phase 1 planning updates and agent config#17

Merged
phroi merged 5 commits intomasterfrom
docs/phase1-planning-updates
Feb 22, 2026
Merged

docs: phase 1 planning updates and agent config#17
phroi merged 5 commits intomasterfrom
docs/phase1-planning-updates

Conversation

@phroi
Copy link
Member

@phroi phroi commented Feb 22, 2026

Why

Capture phase 1 context decisions and reconcile all planning docs with the feature-slice approach. Also trims agent config based on review of redundant rules.

Changes

  • Phase 1 context: Create 01-CONTEXT.md with architectural decisions (TransactionLike convention, getHeader removal, headerDeps approach); update STATE.md
  • Planning docs reconciliation: Align ROADMAP, REQUIREMENTS, research, and codebase docs with phase 1 decisions and feature-slice approach
  • Codebase docs: Correct pnpm-workspace.yaml listing, .pnpmfile.cjs description, ccc-dev directory structure
  • Agent config: Add CLAUDE.md symlink note, Knowledge section, clickable PR links; remove redundant rules
  • Lockfile: Dependency version bumps

Record architectural decisions from phase 1 context session:
TransactionLike convention, getHeader/HeaderKey removal, headerDeps
management approach. Update STATE.md with session progress.
Align all planning and research docs with decisions from phase 1
context work:
- TransactionLike input / Transaction output convention (CCC pattern)
- getHeader()/HeaderKey removed entirely; CCC client calls inlined
- Phase→Step terminology in protocol descriptions (avoid roadmap
  confusion)
- Feature-slice approach noted in research docs (vs original
  per-package bottom-up suggestion)
- Phase 3 renamed to "CCC Udt Integration Investigation"
- CapacityManager deletion (not migration) clarified
- addCellDeps() is already on ccc.Transaction (no utility needed)
- STACK.md: add ccc-dev workspace entries to pnpm-workspace.yaml
  listing; fix .pnpmfile.cjs description (workspace:* not link:)
- STRUCTURE.md: update ccc-dev directory tree (add patch.sh, push.sh,
  status.sh, tsgo-filter.sh; remove obsolete tsc.mjs)
@gemini-code-assist
Copy link

Summary of Changes

Hello @phroi, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request refines the project's foundational planning and documentation, primarily by updating the roadmap and requirements for the critical Phase 1 of SmartTransaction removal. The changes emphasize a 'feature-slice' development approach to ensure continuous build integrity and align the codebase more closely with CCC conventions, particularly regarding transaction handling and header management. Additionally, agent configuration guidelines are improved, and development environment setup details are clarified, ensuring a more robust and consistent development workflow.

Highlights

  • Phase 1 Planning Updates: The planning documents (REQUIREMENTS.md, ROADMAP.md, STATE.md, ARCHITECTURE.md, STACK.md, PITFALLS.md, SUMMARY.md) have been extensively updated to reflect the new 'feature-slice' approach for Phase 1 of the SmartTransaction removal. This includes clarifying the goal of migrating all manager method signatures to ccc.TransactionLike early in Phase 1, removing getHeader() and HeaderKey utilities, and contributing the 64-output DAO limit check to CCC core.
  • Agent Configuration Refinements: The AGENTS.md file has been updated to include a note about the CLAUDE.md symlink, change the PR link format to a clickable markdown link, and add a new 'Knowledge' section emphasizing the importance of using Script.eq() for CKB script comparison.
  • Codebase Documentation Corrections: Corrections were made to pnpm-workspace.yaml to properly include ccc-dev/ccc/packages/* while excluding specific demo/test packages, and the description of .pnpmfile.cjs was clarified regarding workspace:* overrides. The ccc-dev directory structure in STRUCTURE.md was also updated to reflect new utility scripts.
  • Dependency Version Bumps: The pnpm-lock.yaml file was updated to bump the versions of @anthropic-ai/claude-code and @typescript/native-preview and its associated platform-specific packages.
  • New Phase 1 Context Document: A new document, .planning/phases/01-ickb-utils-smarttransaction-removal/01-CONTEXT.md, was added to detail the architectural and implementation decisions for Phase 1, covering aspects like CCC DAO contribution, getHeader() removal, the feature-slice build strategy, method signature conventions, and the deferral of UdtHandler/UdtManager replacement.
Changelog
  • .planning/REQUIREMENTS.md
    • Updated SmartTransaction removal requirements (SMTX-01, SMTX-04, SMTX-05, SMTX-06, SMTX-10) to reflect the feature-slice approach and getHeader() removal.
    • Clarified UDT-02 requirement regarding header access patterns.
    • Added a 'Notes' column to the requirements table for additional context.
    • Updated the last modified date.
  • .planning/ROADMAP.md
    • Updated the overview to highlight the 'feature-slice approach' for SmartTransaction removal.
    • Refined the goals and success criteria for Phase 1, 4, and 5 to align with the new strategy.
    • Clarified Phase 3's dependency on Phase 1 for UDT decision-making.
    • Updated the phase table to reflect new phase names and dependencies.
  • .planning/STATE.md
    • Updated the current focus and status to 'SmartTransaction Removal (feature-slice)' and 'Context gathered, ready to plan'.
    • Updated the last activity date and resume file.
    • Revised recent decisions to reflect the feature-slice approach, getHeader() removal, and CCC DAO contribution.
  • .planning/codebase/ARCHITECTURE.md
    • Changed '2-Phase' to '2-Step' for deposit and withdrawal descriptions.
    • Updated the @ickb/utils responsibilities to remove getHeader() utilities and CapacityManager.
    • Revised the SmartTransaction replacement table to specify ccc.TransactionLike input/output and detail getHeader() removal.
  • .planning/codebase/STACK.md
    • Expanded pnpm-workspace.yaml to include ccc-dev/ccc/packages/* and exclude specific CCC development packages.
    • Clarified the description of .pnpmfile.cjs regarding workspace:* overrides for local CCC builds.
  • .planning/codebase/STRUCTURE.md
    • Added new scripts (patch.sh, push.sh, status.sh, tsgo-filter.sh) to the ccc-dev directory structure.
    • Updated the description of transaction methods to accept ccc.TransactionLike and return ccc.Transaction.
  • .planning/phases/01-ickb-utils-smarttransaction-removal/01-CONTEXT.md
    • Added a new document outlining the context and implementation decisions for Phase 1 of SmartTransaction removal.
    • Detailed decisions on CCC DAO contribution, getHeader() removal, feature-slice build strategy, method signature conventions, and UdtHandler/UdtManager deferral.
    • Specified the full removal of CapacityManager and the general approach to code deletion.
  • .planning/research/ARCHITECTURE.md
    • Updated the @ickb/utils responsibilities to remove getHeader()/HeaderKey.
    • Clarified SmartTransaction replacement details, emphasizing TransactionLike input/output and direct tx.headerDeps pushes.
    • Revised the 'Build Order' section to explicitly state the adoption of a 'feature-slice approach' over a strict bottom-up package order.
  • .planning/research/FEATURES.md
    • Updated the dependency of 'CCC Udt Investigation' to indicate it can proceed in parallel with SmartTransaction removal.
    • Clarified that 'CCC Udt Investigation' is exploratory and informs API design.
    • Updated the SmartTransaction removal requirement to specify ccc.TransactionLike for manager methods.
  • .planning/research/PITFALLS.md
    • Updated the SmartTransaction replacement strategy for header management, noting the removal of getHeader() and HeaderKey.
    • Clarified the phase for addressing CCC Udt subclassing pitfalls as 'CCC Udt Integration Investigation'.
  • .planning/research/STACK.md
    • Removed HeaderKey type and getHeader() from the list of iCKB-specific utilities.
    • Updated the SmartTransaction replacement table to reflect the removal of addHeaders()/getHeader() and the direct use of tx.headerDeps.
    • Added a decision note from Phase 1 context regarding the removal of getHeader() and HeaderKey.
    • Updated the note on IckbUdt subclassing to reference 'CCC Udt Integration Investigation'.
  • .planning/research/SUMMARY.md
    • Updated the description of @ickb/utils to reflect the removal of SmartTransaction, UdtHandler, UdtManager, CapacityManager, and getHeader()/HeaderKey.
    • Added a note clarifying that the phase structure in this document was a pre-roadmap suggestion, and the actual roadmap uses a feature-slice approach.
  • AGENTS.md
    • Removed the introductory line 'This file is the tool-agnostic agent config'.
    • Added a note about CLAUDE.md being a symlink to this file.
    • Updated the 'Open a PR' instruction to specify a clickable markdown link format.
    • Added a new 'Knowledge' section with a guideline for CKB script comparison using Script.eq().
  • pnpm-lock.yaml
    • Updated the version of @anthropic-ai/claude-code from 2.1.49 to 2.1.50.
    • Updated the version of @typescript/native-preview and its platform-specific variants from 7.0.0-dev.20260220.1 to 7.0.0-dev.20260221.1.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request provides a comprehensive update to the project's planning documents, aligning them with a new "feature-slice" approach for the upcoming refactoring work. The changes are extensive, consistent across all modified documents, and significantly improve the clarity of the project plan. A new context document for Phase 1 has been added, and various research and requirements files have been updated accordingly. I have one minor suggestion to improve the readability of the AGENTS.md configuration file.

- Add symlink note (CLAUDE.md -> AGENTS.md via pnpm coworker)
- Promote Learn directive to bold header for visibility
- Add Knowledge section with CKB Script.eq() comparison rule
- PR links: present as clickable markdown link, not raw URL
Dependency version bumps (claude-code 2.1.50, tsgo dev.20260221.1).
@phroi phroi force-pushed the docs/phase1-planning-updates branch from 00a8021 to 14db037 Compare February 22, 2026 15:23
@phroi
Copy link
Member Author

phroi commented Feb 22, 2026

/gemini review

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request successfully aligns the project's planning documentation with a new "feature-slice" architectural approach for Phase 1, focusing on the removal of the SmartTransaction abstraction. Key updates include the creation of a detailed context document for Phase 1, reconciliation of requirements and roadmap across all domain packages, and refinements to the AI agent configuration. The shift to a feature-slice strategy—ensuring the build remains green by propagating changes across all packages simultaneously—is a significant improvement for maintainability. The addition of explicit rules for CKB script comparison using Script.eq() in the agent configuration is a commendable best practice that will prevent subtle bugs during implementation.

@phroi
Copy link
Member Author

phroi commented Feb 22, 2026

LGTM

Phroi %184

@phroi phroi merged commit 3de2276 into master Feb 22, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant